package mx.ipn.persistencia.dao;

import java.util.ArrayList;

import mx.ipn.to.BitacoraAccesoTO;

public interface BitacoraAccesoDAO {

	public boolean insertBitacoraAcceso(BitacoraAccesoTO bitacoraAccesoTO);

	public short updateBitacoraAcceso(BitacoraAccesoTO bitacoraAccesoTO);

	public BitacoraAccesoTO findBitacoraAccesoById(int idBitacoraAcceso);
	
	public BitacoraAccesoTO findBitacoraAccesoByIdUsuarioMotivo(int idBitacoraAcceso,java.sql.Date inicioFecha,int idUsuario,int idMotivo);

	public ArrayList<BitacoraAccesoTO> selectBitacoraAcceso();

	public ArrayList<BitacoraAccesoTO> selectByRangoFecha(java.sql.Date inicio,
			java.sql.Date fin);

	public ArrayList<BitacoraAccesoTO> selectByRangoFechaHora(
			java.sql.Date inicioFecha, java.sql.Date finFecha,
			java.sql.Time inicioHora, java.sql.Time finHora);

	public BitacoraAccesoTO selectByUsuario(int idUsuario);

	public BitacoraAccesoTO selectByMotivo(int idMotivo);

	public BitacoraAccesoTO selectByUsuarioMotivoRangoFechaHora(int idUsuario,
			int idMotivo, java.sql.Date inicioFecha, java.sql.Date finFecha,
			java.sql.Time inicioHora, java.sql.Time finHora);

}
